1. Technical Field
The present invention relates to data processing systems and, in particular, to the retransmission of only an incorrectly transmitted portion of a data packet. Still more particularly, the present invention relates to a method and system in a data processing system for the association of an error detection identifier with each of a plurality of segments included within a transmitted data packet.
2. Description of the Related Art
Computer systems utilize modems to communicate with each other utilizing analog telecommunication lines such as a telephone network. The modem converts the digital data from the computer to an analog signal that can be transmitted on a telecommunication line and converts the analog signal received to data for the computer. Standard protocols are defined, such as the ITU V series, which describe modem operation and design in order to permit different, conforming computer systems to communicate.
One such protocol is an error detection and recovery via retransmission protocol, such as the ITU V.42 protocol. Such a protocol recovers from errors by retransmitting incorrectly received data packets. Error correction protocols are defined to overcome data communication errors typically due to noise on the telecommunication line. The protocol defines procedures to be taken when a transmitted packet of data is received in error.
For example, when a receiving system receives a packet in error, a standard reject procedure (REJ) requires the retransmission of all data received after the bad packet was received. Alternatively, a selective reject procedure (SREJ) requires retransmission of only the packets which were actually received in error, thus minimizing the total amount of data which must be retransmitted after an error has occurred.
Using a selective reject instead of a standard reject procedure may speed up transmission. However, problems can occur when the packet including the selective reject information is itself in error. For example, the selective reject packet may be lost during transmission. In this case, the data link must wait for a time-out recovery. This wait will have a larger negative impact on throughput than if a standard reject procedure had been used, since all data sent while waiting for the time-out will be discarded during the process of recovering from that time-out.
In known systems, after an error has occurred during the transmission of a packet, the entire packet must be retransmitted. Therefore, often there will be significantly more data which is retransmitted than was actually corrupted. For example, a 512-byte packet may have had a 32 byte burst in the middle of the packet which was in error with the remaining bytes having been received correctly. Known error correction procedures would require the entire 512-byte packet to be retransmitted.
Therefore a need exists for a method and system in a data processing system whereby only a portion of a data packet is retransmitted in response to the portion having been transmitted incorrectly.